package ar.com.aterrizar.homes;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import org.uqbar.commons.utils.Observable;

import ar.com.aterrizar.asientos.Asiento;
import ar.com.aterrizar.asientos.AsientoLanchita;
import uqbar.arena.persistence.PersistentHome;

@Observable
public class ComprasHome extends PersistentHome<Asiento> implements Serializable{
	private static ComprasHome instance;
	private static List<Asiento> asientosComprados;
	
	public static synchronized ComprasHome getInstance() {
		if (instance == null) {
			instance = new ComprasHome();
			asientosComprados = new ArrayList<Asiento>(); 
			asientosComprados.addAll(instance.allInstances());
		}
		return instance;
	}

	
	private ComprasHome() {
	}
	
	public List<Asiento> getAsientosComprados(){
		return asientosComprados;
	}
	
	public void addAsiento(Asiento asiento){
		asientosComprados.add(asiento);
		this.create(asiento);
	}
	
	@Override
	public Class<Asiento> getEntityType() {
		return Asiento.class;
	}

	@Override
	public Asiento createExample() {
		return new AsientoLanchita("2134123");
	}
}
